import { Link } from '@brillout/docpress'

We generally recommend using Vike with an RPC tool. See <Link href="/data-fetching" />.

> **What is RPC?**
>
> [**R**emote **P**rocedure **C**all](https://en.wikipedia.org/wiki/Remote_procedure_call) (RPC, aka Server Actions) enables the frontend to seamlessly call backend functions, see in-depth explanation [here](https://telefunc.com/RPC).
>
> It's an increasingly popular data-fetching technique used instead of GraphQL and REST. (You can also use multiple data-fetching techniques, although the use case for it is seldom.)

Common RPC tools:

- [Telefunc](https://telefunc.com)
  > Telefunc was created by the Vike team.

  > You'll soon be able to use Telefunc also to fetch initial data (instead of using the `data()` hook), see [Telefunc > #102](https://github.com/brillout/telefunc/issues/102).
- [tRPC](https://trpc.io/)
  > Similar to Telefunc:
  >  - Con: Telefunc is simpler.
  >  - Pro: supports real-time data using websockets.


## See also

- <Link href="/data-fetching" />
- <Link href="/api-routes" />
